<?php

class amministratori_mod extends CI_Model {
	
	
	public function __construct(){
		parent::__construct();
	}
	
	public function cancella_associazione_area($id_record){
		$query = "delete  from utenti_area where id='$id_record' ";
		$risu  = mysql_query($query); 
		if($risu)return "1";
		else return "Errore al momento della cancellazione";
	}
	
	// Questa è la parte celle aree associate all'utente
	public function aree_associate($id_utente){
		$arr_return = array();
		$query = "select area.name as area_name , utenti_area.id as id , utenti_area.id_utente as id_utente FROM utenti_area LEFT JOIN area ON utenti_area.id_area=area.id WHERE utenti_area.id_utente=$id_utente  ";
		$risu = mysql_query($query); 
		$num  = mysql_num_rows($risu);
		for($x=0;$x<$num;$x++){
			$arr_return[$x] = mysql_fetch_array($risu);
		}
		return $arr_return ; 
	}
	
	// Questa è la parte ch egestisce le funzioni di inserimento area
	public function add_area_db($id_utente, $id_area){
		$query_check = "select * from utenti_area where id_utente=$id_utente and id_area='$id_area' ";
		$risu_check = mysql_query($query_check); 
		$num_check  = mysql_num_rows($risu_check);
		
		if(!$num_check && $id_area){
			$query = "insert into utenti_area (id_utente , id_area) VALUES ('$id_utente' , '$id_area')";
			$risu  = mysql_query($query);
			if($risu) return "1";
			else return "Errore al momento dell'inserimento";
		}
		else return "L'area è già stata assegnata all'utente";
	}
	
	// Questa è la parte ch egestisce l'elenco delle aree
	public function quante_aree($id_utente){
			$query = "select * from utenti_area where id_utente='$id_utente'";
			$risu  = mysql_query($query);
			return mysql_num_rows($risu);
	}
	
	// Questa sarebbe elenco aree
	public function elenco_aree($id_record){
		
		// this should be better bu it doesn't work
		$query = "SELECT DISTINCT area.id AS id_area, area.name AS area_name 
				FROM area
				WHERE (id) NOT IN 
				(SELECT id_area FROM utenti_area WHERE id_utente='$id_record') ";
		
		$risu  = mysql_query($query);
		$num   = mysql_num_rows($risu);
		$arr_return = array();
		for($x=0;$x<$num;$x++){
			$arr = mysql_fetch_array($risu);
			$arr_return[$x]  = $arr ; 
		}
		return $arr_return ; 
		
	}
	
	public function promuovi_utente($id_utente){
		$id_utente = mysql_real_escape_string($id_utente);
		$query = "update utenti_registrati set amministratore='1' where id='$id_utente' ";
		$risu  = mysql_query($query);
		if($risu) echo "1";
		else echo "Errore al momento della modifica";
	}
	
	public function ricerca_utente($stringa_ricerca){
		$str = mysql_real_escape_string($stringa_ricerca); 
		$query = "select * from utenti_registrati where cognome like('%$stringa_ricerca%') and amministratore<>'1'";
		$risu  = mysql_query($query);
		$num   = mysql_num_rows($risu);
		$arr_return = array(); 
		for($x=0;$x<$num;$x++){
			$arr = mysql_fetch_array($risu);
			$arr_return[$x] = $arr ; 
		}
		return $arr_return ; 
	}
	
	public function status_change($id_record, $nuovo_stato){
		$query = "update area set visible='$nuovo_stato' where id='$id_record' ";
		$risu  = mysql_query($query);
		if($risu){ 
			return "1";
		} 
		else return "0";
	}
	
	public function modify_db($arr_post){
		$description = mysql_real_escape_string($arr_post['description']);
		$name = mysql_real_escape_string($arr_post['name']);
		$id_record = mysql_real_escape_string($arr_post['id_record']);
		$query = "update area set name='{$name}' , description='$description' where id='$id_record' ";
		//echo $query ;
		$risu  = mysql_query($query);
		if($risu) return "1";
		else return "0";
		
	}
	
	// Questa è la parte ch egestisce i dettagli
	public function detail($id_record){
		$query = "select * from area where id='$id_record' ";
		$risu = mysql_query($query);
		$arr  = mysql_fetch_array($risu);
		return $arr ; 
	}
	
	// Questa è la parte ch egestisce la cancellazione
	public function retrocedi($id_record){
		$query = "update utenti_registrati set amministratore='0' where id='$id_record' ";
		$risu  = mysql_query($query);
		if($risu) echo "1";
		else echo "Errore al momento della modifica";
	}
	
	
	// questa è la parte che gestisce l'index
	public function inserisci_db($arr_post){
		$description = mysql_real_escape_string($arr_post['description']);
		$name = mysql_real_escape_string($arr_post['name']);
		
		$query = "insert into area (name , description) VALUES ('$name' , '$description')";
		$risu  = mysql_query($query);
		if($risu) return "1";
		else return "Errore al momento dell'inserimento";
		
	}
	
	// Questa è la parte che restituisce l'elenco delle aree
	public function elenco(){
		$query = "select utenti_registrati.* , pagine.id AS id_pagina 
			FROM 
				utenti_registrati LEFT JOIN pagine ON utenti_registrati.id=pagine.id_utente 
			WHERE 
				utenti_registrati.amministratore='1' AND 
				pagine.tipo=1 ";
		$risu = mysql_query($query);
		$num  = mysql_num_rows($risu);
		$arr_return = array();
		for($x=0;$x<$num;$x++){
			$arr = mysql_fetch_array($risu); 
			$arr_return[$x] = $arr ; 
		}
		return $arr_return ;
	}
	
	
}
?>
